package com.tmt.api.service;

import com.swak.entity.Page;
import com.swak.entity.Parameters;
import com.swak.persistence.QueryCondition;
import com.tmt.api.entity.Order;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.Long;
import java.lang.Void;
import java.util.List;
import java.util.concurrent.CompletableFuture;

public interface OrderServiceAsync {
  CompletableFuture<Order> get(Long id);

  CompletableFuture<List<Order>> queryByCondition(QueryCondition qc);

  CompletableFuture<Page> queryForPage(QueryCondition qc, Parameters param);

  CompletableFuture<Integer> countByCondition(QueryCondition qc);

  CompletableFuture<List<Order>> queryForLimitList(QueryCondition qc, Integer size);

  CompletableFuture<Boolean> exists(Long id);

  CompletableFuture<Integer> delete(Order entity);

  CompletableFuture<Void> batchDelete(List<Order> entities);
}
